﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Class RangeExtensions
   | CodeJam </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Class RangeExtensions
   | CodeJam ">
    <meta name="generator" content="docfx 2.23.1.0">
    
    <link rel="shortcut icon" href="../../favicon.ico">
    <link rel="stylesheet" href="../../styles/docfx.vendor.css">
    <link rel="stylesheet" href="../../styles/docfx.css">
    <link rel="stylesheet" href="../../styles/main.css">
    <meta property="docfx:navrel" content="../../toc.html">
    <meta property="docfx:tocrel" content="toc.html">
    <meta property="docfx:rel" content="../../">
    
  </head>
  <body data-spy="scroll" data-target="#affix">
    <div id="wrapper">
      <header>
        
        <nav id="autocollapse" class="navbar navbar-inverse ng-scope" role="navigation">
          <div class="container">
            <div class="navbar-header">
              <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
              
              <a class="navbar-brand" href="../../index.html">
                <img id="logo" class="svg" src="../../images/CodeJam.Main.Icon.png" alt="">
              </a>
            </div>
            <div class="collapse navbar-collapse" id="navbar">
              <form class="navbar-form navbar-right" role="search" id="search">
                <div class="form-group">
                  <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
                </div>
              </form>
            </div>
          </div>
        </nav>
        
        <div class="subnav navbar navbar-default">
          <div class="container hide-when-search" id="breadcrumb">
            <ul class="breadcrumb">
              <li></li>
            </ul>
          </div>
        </div>
      </header>
      <div class="container body-content">
        
        <div id="search-results">
          <div class="search-list"></div>
          <div class="sr-items"></div>
          <ul id="pagination"></ul>
        </div>
      </div>
      <div role="main" class="container body-content hide-when-search">
        
        <div class="sidenav hide-when-search">
          <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
          <div class="sidetoggle collapse" id="sidetoggle">
            <div id="sidetoc"></div>
          </div>
        </div>
        <div class="article row grid-right">
          <div class="col-md-10">
            <article class="content wrap" id="_content" data-uid="CodeJam.Ranges.RangeExtensions">
  
  
  <h1 id="CodeJam_Ranges_RangeExtensions" data-uid="CodeJam.Ranges.RangeExtensions" class="text-break">Class RangeExtensions
  </h1>
  <div class="markdown level0 summary"><p>Extension methods for <a class="xref" href="CodeJam.Ranges.Range-1.html">Range&lt;T&gt;</a>.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><span class="xref">System.Object</span></div>
    <div class="level1"><span class="xref">RangeExtensions</span></div>
  </div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <span class="xref">System.Object.ToString()</span>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.ReferenceEquals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.GetHashCode()</span>
    </div>
    <div>
      <span class="xref">System.Object.GetType()</span>
    </div>
    <div>
      <span class="xref">System.Object.MemberwiseClone()</span>
    </div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="CodeJam.Ranges.html">CodeJam.Ranges</a></h6>
  <h6><strong>Assembly</strong>: CodeJam.dll</h6>
  <h5 id="CodeJam_Ranges_RangeExtensions_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static class RangeExtensions</code></pre>
  </div>
  <h3 id="methods">Methods
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Clamp__1_CodeJam_Ranges_Range___0____0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Clamp%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L199">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Clamp_" data-uid="CodeJam.Ranges.RangeExtensions.Clamp*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Clamp__1_CodeJam_Ranges_Range___0____0_" data-uid="CodeJam.Ranges.RangeExtensions.Clamp``1(CodeJam.Ranges.Range{``0},``0)">Clamp&lt;T&gt;(Range&lt;T&gt;, T)</h4>
  <div class="markdown level1 summary"><p>Ensures that the value fits into a range.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static T Clamp&lt;T&gt;(this Range&lt;T&gt; range, T value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The range the value will be fitted to.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to be adjusted.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">T</span></td>
        <td><p>A new value that fits into a range specified</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.ArgumentException</span></td>
        <td><p>The range is empty or any of its boundaries is exclusive.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Clamp__2_CodeJam_Ranges_Range___0___1____0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Clamp%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L219">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Clamp_" data-uid="CodeJam.Ranges.RangeExtensions.Clamp*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Clamp__2_CodeJam_Ranges_Range___0___1____0_" data-uid="CodeJam.Ranges.RangeExtensions.Clamp``2(CodeJam.Ranges.Range{``0,``1},``0)">Clamp&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, T)</h4>
  <div class="markdown level1 summary"><p>Ensures that the value fits into a range.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static T Clamp&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, T value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The range the value will be fitted to.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to be adjusted.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">T</span></td>
        <td><p>A new value that fits into a range specified</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.ArgumentException</span></td>
        <td><p>The range is empty or any of its boundaries is exclusive.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Contains__1_CodeJam_Ranges_Range___0____0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Contains%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L99">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Contains_" data-uid="CodeJam.Ranges.RangeExtensions.Contains*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Contains__1_CodeJam_Ranges_Range___0____0_" data-uid="CodeJam.Ranges.RangeExtensions.Contains``1(CodeJam.Ranges.Range{``0},``0)">Contains&lt;T&gt;(Range&lt;T&gt;, T)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range contains the specified value.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool Contains&lt;T&gt;(this Range&lt;T&gt; range, T value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range contains the value.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Contains__1_CodeJam_Ranges_Range___0____0___0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Contains%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2C%60%600%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L141">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Contains_" data-uid="CodeJam.Ranges.RangeExtensions.Contains*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Contains__1_CodeJam_Ranges_Range___0____0___0_" data-uid="CodeJam.Ranges.RangeExtensions.Contains``1(CodeJam.Ranges.Range{``0},``0,``0)">Contains&lt;T&gt;(Range&lt;T&gt;, T, T)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range contains another range.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool Contains&lt;T&gt;(this Range&lt;T&gt; range, T from, T to)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">from</span></td>
        <td><p>The boundary From value of the range to check.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">to</span></td>
        <td><p>The boundary To value of the range to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range contains another range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Contains__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryFrom___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Contains%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2CCodeJam.Ranges.RangeBoundaryFrom%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L110">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Contains_" data-uid="CodeJam.Ranges.RangeExtensions.Contains*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Contains__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryFrom___0__" data-uid="CodeJam.Ranges.RangeExtensions.Contains``1(CodeJam.Ranges.Range{``0},CodeJam.Ranges.RangeBoundaryFrom{``0})">Contains&lt;T&gt;(Range&lt;T&gt;, RangeBoundaryFrom&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range contains the specified range boundary.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool Contains&lt;T&gt;(this Range&lt;T&gt; range, RangeBoundaryFrom&lt;T&gt; other)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryFrom-1.html">RangeBoundaryFrom</a>&lt;T&gt;</td>
        <td><span class="parametername">other</span></td>
        <td><p>The boundary to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range contains the boundary.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Contains__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryTo___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Contains%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2CCodeJam.Ranges.RangeBoundaryTo%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L125">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Contains_" data-uid="CodeJam.Ranges.RangeExtensions.Contains*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Contains__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryTo___0__" data-uid="CodeJam.Ranges.RangeExtensions.Contains``1(CodeJam.Ranges.Range{``0},CodeJam.Ranges.RangeBoundaryTo{``0})">Contains&lt;T&gt;(Range&lt;T&gt;, RangeBoundaryTo&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range contains the specified range boundary.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool Contains&lt;T&gt;(this Range&lt;T&gt; range, RangeBoundaryTo&lt;T&gt; other)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryTo-1.html">RangeBoundaryTo</a>&lt;T&gt;</td>
        <td><span class="parametername">other</span></td>
        <td><p>The boundary to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range contains the boundary.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Contains__2___1_CodeJam_Ranges_Range___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Contains%60%602(%60%601%2CCodeJam.Ranges.Range%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L153">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Contains_" data-uid="CodeJam.Ranges.RangeExtensions.Contains*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Contains__2___1_CodeJam_Ranges_Range___0__" data-uid="CodeJam.Ranges.RangeExtensions.Contains``2(``1,CodeJam.Ranges.Range{``0})">Contains&lt;T, TRange&gt;(TRange, Range&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range contains another range.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool Contains&lt;T, TRange&gt;(this TRange range, Range&lt;T&gt; other)where TRange : IRange&lt;T&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">TRange</span></td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">other</span></td>
        <td><p>The range to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range contains another range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TRange</span></td>
        <td><p>The type of the range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Contains__2_CodeJam_Ranges_Range___0___1____0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Contains%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L112">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Contains_" data-uid="CodeJam.Ranges.RangeExtensions.Contains*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Contains__2_CodeJam_Ranges_Range___0___1____0_" data-uid="CodeJam.Ranges.RangeExtensions.Contains``2(CodeJam.Ranges.Range{``0,``1},``0)">Contains&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, T)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range contains the specified value.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool Contains&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, T value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range contains the value.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Contains__2_CodeJam_Ranges_Range___0___1____0___0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Contains%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2C%60%600%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L157">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Contains_" data-uid="CodeJam.Ranges.RangeExtensions.Contains*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Contains__2_CodeJam_Ranges_Range___0___1____0___0_" data-uid="CodeJam.Ranges.RangeExtensions.Contains``2(CodeJam.Ranges.Range{``0,``1},``0,``0)">Contains&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, T, T)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range contains another range.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool Contains&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, T from, T to)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">from</span></td>
        <td><p>The boundary From value of the range to check.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">to</span></td>
        <td><p>The boundary To value of the range to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range contains another range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Contains__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryFrom___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Contains%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2CCodeJam.Ranges.RangeBoundaryFrom%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L124">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Contains_" data-uid="CodeJam.Ranges.RangeExtensions.Contains*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Contains__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryFrom___0__" data-uid="CodeJam.Ranges.RangeExtensions.Contains``2(CodeJam.Ranges.Range{``0,``1},CodeJam.Ranges.RangeBoundaryFrom{``0})">Contains&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, RangeBoundaryFrom&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range contains the specified range boundary.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool Contains&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, RangeBoundaryFrom&lt;T&gt; other)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryFrom-1.html">RangeBoundaryFrom</a>&lt;T&gt;</td>
        <td><span class="parametername">other</span></td>
        <td><p>The boundary to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range contains the boundary.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Contains__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryTo___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Contains%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2CCodeJam.Ranges.RangeBoundaryTo%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L140">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Contains_" data-uid="CodeJam.Ranges.RangeExtensions.Contains*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Contains__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryTo___0__" data-uid="CodeJam.Ranges.RangeExtensions.Contains``2(CodeJam.Ranges.Range{``0,``1},CodeJam.Ranges.RangeBoundaryTo{``0})">Contains&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, RangeBoundaryTo&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range contains the specified range boundary.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool Contains&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, RangeBoundaryTo&lt;T&gt; other)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryTo-1.html">RangeBoundaryTo</a>&lt;T&gt;</td>
        <td><span class="parametername">other</span></td>
        <td><p>The boundary to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range contains the boundary.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Contains__3___2_CodeJam_Ranges_Range___0___1__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Contains%60%603(%60%602%2CCodeJam.Ranges.Range%7B%60%600%2C%60%601%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L170">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Contains_" data-uid="CodeJam.Ranges.RangeExtensions.Contains*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Contains__3___2_CodeJam_Ranges_Range___0___1__" data-uid="CodeJam.Ranges.RangeExtensions.Contains``3(``2,CodeJam.Ranges.Range{``0,``1})">Contains&lt;T, TKey, TRange&gt;(TRange, Range&lt;T, TKey&gt;)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range contains another range.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool Contains&lt;T, TKey, TRange&gt;(this TRange range, Range&lt;T, TKey&gt; other)where TRange : IRange&lt;T&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">TRange</span></td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">other</span></td>
        <td><p>The range to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range contains another range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TRange</span></td>
        <td><p>The type of the range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_EndsBefore__1_CodeJam_Ranges_Range___0____0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.EndsBefore%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L273">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_EndsBefore_" data-uid="CodeJam.Ranges.RangeExtensions.EndsBefore*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_EndsBefore__1_CodeJam_Ranges_Range___0____0_" data-uid="CodeJam.Ranges.RangeExtensions.EndsBefore``1(CodeJam.Ranges.Range{``0},``0)">EndsBefore&lt;T&gt;(Range&lt;T&gt;, T)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range ends before the value specified.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool EndsBefore&lt;T&gt;(this Range&lt;T&gt; range, T value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range ends before the value.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_EndsBefore__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryFrom___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.EndsBefore%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2CCodeJam.Ranges.RangeBoundaryFrom%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L282">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_EndsBefore_" data-uid="CodeJam.Ranges.RangeExtensions.EndsBefore*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_EndsBefore__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryFrom___0__" data-uid="CodeJam.Ranges.RangeExtensions.EndsBefore``1(CodeJam.Ranges.Range{``0},CodeJam.Ranges.RangeBoundaryFrom{``0})">EndsBefore&lt;T&gt;(Range&lt;T&gt;, RangeBoundaryFrom&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range ends before the boundary specified.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool EndsBefore&lt;T&gt;(this Range&lt;T&gt; range, RangeBoundaryFrom&lt;T&gt; other)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryFrom-1.html">RangeBoundaryFrom</a>&lt;T&gt;</td>
        <td><span class="parametername">other</span></td>
        <td><p>The boundary to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range ends before the boundary.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_EndsBefore__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryTo___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.EndsBefore%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2CCodeJam.Ranges.RangeBoundaryTo%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L291">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_EndsBefore_" data-uid="CodeJam.Ranges.RangeExtensions.EndsBefore*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_EndsBefore__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryTo___0__" data-uid="CodeJam.Ranges.RangeExtensions.EndsBefore``1(CodeJam.Ranges.Range{``0},CodeJam.Ranges.RangeBoundaryTo{``0})">EndsBefore&lt;T&gt;(Range&lt;T&gt;, RangeBoundaryTo&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range ends before the boundary specified.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool EndsBefore&lt;T&gt;(this Range&lt;T&gt; range, RangeBoundaryTo&lt;T&gt; other)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryTo-1.html">RangeBoundaryTo</a>&lt;T&gt;</td>
        <td><span class="parametername">other</span></td>
        <td><p>The boundary to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range ends before the boundary.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_EndsBefore__2___1_CodeJam_Ranges_Range___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.EndsBefore%60%602(%60%601%2CCodeJam.Ranges.Range%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L303">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_EndsBefore_" data-uid="CodeJam.Ranges.RangeExtensions.EndsBefore*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_EndsBefore__2___1_CodeJam_Ranges_Range___0__" data-uid="CodeJam.Ranges.RangeExtensions.EndsBefore``2(``1,CodeJam.Ranges.Range{``0})">EndsBefore&lt;T, TRange&gt;(TRange, Range&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range ends before the range specified.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool EndsBefore&lt;T, TRange&gt;(this TRange range, Range&lt;T&gt; other)where TRange : IRange&lt;T&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">TRange</span></td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">other</span></td>
        <td><p>The range to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range ends before another range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TRange</span></td>
        <td><p>The type of the range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_EndsBefore__2_CodeJam_Ranges_Range___0___1____0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.EndsBefore%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L298">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_EndsBefore_" data-uid="CodeJam.Ranges.RangeExtensions.EndsBefore*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_EndsBefore__2_CodeJam_Ranges_Range___0___1____0_" data-uid="CodeJam.Ranges.RangeExtensions.EndsBefore``2(CodeJam.Ranges.Range{``0,``1},``0)">EndsBefore&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, T)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range ends before the value specified.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool EndsBefore&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, T value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range ends before the value.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_EndsBefore__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryFrom___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.EndsBefore%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2CCodeJam.Ranges.RangeBoundaryFrom%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L308">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_EndsBefore_" data-uid="CodeJam.Ranges.RangeExtensions.EndsBefore*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_EndsBefore__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryFrom___0__" data-uid="CodeJam.Ranges.RangeExtensions.EndsBefore``2(CodeJam.Ranges.Range{``0,``1},CodeJam.Ranges.RangeBoundaryFrom{``0})">EndsBefore&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, RangeBoundaryFrom&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range ends before the boundary specified.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool EndsBefore&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, RangeBoundaryFrom&lt;T&gt; other)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryFrom-1.html">RangeBoundaryFrom</a>&lt;T&gt;</td>
        <td><span class="parametername">other</span></td>
        <td><p>The boundary to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range ends before the boundary.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_EndsBefore__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryTo___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.EndsBefore%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2CCodeJam.Ranges.RangeBoundaryTo%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L318">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_EndsBefore_" data-uid="CodeJam.Ranges.RangeExtensions.EndsBefore*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_EndsBefore__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryTo___0__" data-uid="CodeJam.Ranges.RangeExtensions.EndsBefore``2(CodeJam.Ranges.Range{``0,``1},CodeJam.Ranges.RangeBoundaryTo{``0})">EndsBefore&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, RangeBoundaryTo&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range ends before the boundary specified.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool EndsBefore&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, RangeBoundaryTo&lt;T&gt; other)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryTo-1.html">RangeBoundaryTo</a>&lt;T&gt;</td>
        <td><span class="parametername">other</span></td>
        <td><p>The boundary to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range ends before the boundary.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_EndsBefore__3___2_CodeJam_Ranges_Range___0___1__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.EndsBefore%60%603(%60%602%2CCodeJam.Ranges.Range%7B%60%600%2C%60%601%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L331">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_EndsBefore_" data-uid="CodeJam.Ranges.RangeExtensions.EndsBefore*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_EndsBefore__3___2_CodeJam_Ranges_Range___0___1__" data-uid="CodeJam.Ranges.RangeExtensions.EndsBefore``3(``2,CodeJam.Ranges.Range{``0,``1})">EndsBefore&lt;T, TKey, TRange&gt;(TRange, Range&lt;T, TKey&gt;)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range ends before the range specified.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool EndsBefore&lt;T, TKey, TRange&gt;(this TRange range, Range&lt;T, TKey&gt; other)where TRange : IRange&lt;T&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">TRange</span></td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">other</span></td>
        <td><p>The range to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range ends before another range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TRange</span></td>
        <td><p>The type of the range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_ExtendFrom__1_CodeJam_Ranges_Range___0____0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.ExtendFrom%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L348">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_ExtendFrom_" data-uid="CodeJam.Ranges.RangeExtensions.ExtendFrom*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_ExtendFrom__1_CodeJam_Ranges_Range___0____0_" data-uid="CodeJam.Ranges.RangeExtensions.ExtendFrom``1(CodeJam.Ranges.Range{``0},``0)">ExtendFrom&lt;T&gt;(Range&lt;T&gt;, T)</h4>
  <div class="markdown level1 summary"><p>Extends the range from the left.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T&gt; ExtendFrom&lt;T&gt;(this Range&lt;T&gt; range, T from)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">from</span></td>
        <td><p>A new value From.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><p>A range with a new From boundary or the source fange if the new boundary is greater than original.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_ExtendFrom__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryFrom___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.ExtendFrom%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2CCodeJam.Ranges.RangeBoundaryFrom%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L359">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_ExtendFrom_" data-uid="CodeJam.Ranges.RangeExtensions.ExtendFrom*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_ExtendFrom__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryFrom___0__" data-uid="CodeJam.Ranges.RangeExtensions.ExtendFrom``1(CodeJam.Ranges.Range{``0},CodeJam.Ranges.RangeBoundaryFrom{``0})">ExtendFrom&lt;T&gt;(Range&lt;T&gt;, RangeBoundaryFrom&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Extends the range from the left.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T&gt; ExtendFrom&lt;T&gt;(this Range&lt;T&gt; range, RangeBoundaryFrom&lt;T&gt; from)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryFrom-1.html">RangeBoundaryFrom</a>&lt;T&gt;</td>
        <td><span class="parametername">from</span></td>
        <td><p>A new boundary From.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><p>A range with a new From boundary or the source fange if the new boundary is greater than original.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_ExtendFrom__2_CodeJam_Ranges_Range___0___1____0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.ExtendFrom%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L379">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_ExtendFrom_" data-uid="CodeJam.Ranges.RangeExtensions.ExtendFrom*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_ExtendFrom__2_CodeJam_Ranges_Range___0___1____0_" data-uid="CodeJam.Ranges.RangeExtensions.ExtendFrom``2(CodeJam.Ranges.Range{``0,``1},``0)">ExtendFrom&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, T)</h4>
  <div class="markdown level1 summary"><p>Extends the range from the left.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T, TKey&gt; ExtendFrom&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, T from)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">from</span></td>
        <td><p>A new value From.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><p>A range with a new From boundary or the source fange if the new boundary is greater than original.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_ExtendFrom__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryFrom___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.ExtendFrom%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2CCodeJam.Ranges.RangeBoundaryFrom%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L391">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_ExtendFrom_" data-uid="CodeJam.Ranges.RangeExtensions.ExtendFrom*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_ExtendFrom__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryFrom___0__" data-uid="CodeJam.Ranges.RangeExtensions.ExtendFrom``2(CodeJam.Ranges.Range{``0,``1},CodeJam.Ranges.RangeBoundaryFrom{``0})">ExtendFrom&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, RangeBoundaryFrom&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Extends the range from the left.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T, TKey&gt; ExtendFrom&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, RangeBoundaryFrom&lt;T&gt; from)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryFrom-1.html">RangeBoundaryFrom</a>&lt;T&gt;</td>
        <td><span class="parametername">from</span></td>
        <td><p>A new boundary From.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><p>A range with a new From boundary or the source fange if the new boundary is greater than original.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_ExtendTo__1_CodeJam_Ranges_Range___0____0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.ExtendTo%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L377">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_ExtendTo_" data-uid="CodeJam.Ranges.RangeExtensions.ExtendTo*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_ExtendTo__1_CodeJam_Ranges_Range___0____0_" data-uid="CodeJam.Ranges.RangeExtensions.ExtendTo``1(CodeJam.Ranges.Range{``0},``0)">ExtendTo&lt;T&gt;(Range&lt;T&gt;, T)</h4>
  <div class="markdown level1 summary"><p>Extends the range from the right.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T&gt; ExtendTo&lt;T&gt;(this Range&lt;T&gt; range, T to)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">to</span></td>
        <td><p>A new value To.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><p>A range with a new To boundary or the source fange if the new boundary is less than original.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_ExtendTo__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryTo___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.ExtendTo%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2CCodeJam.Ranges.RangeBoundaryTo%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L388">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_ExtendTo_" data-uid="CodeJam.Ranges.RangeExtensions.ExtendTo*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_ExtendTo__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryTo___0__" data-uid="CodeJam.Ranges.RangeExtensions.ExtendTo``1(CodeJam.Ranges.Range{``0},CodeJam.Ranges.RangeBoundaryTo{``0})">ExtendTo&lt;T&gt;(Range&lt;T&gt;, RangeBoundaryTo&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Extends the range from the right.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T&gt; ExtendTo&lt;T&gt;(this Range&lt;T&gt; range, RangeBoundaryTo&lt;T&gt; to)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryTo-1.html">RangeBoundaryTo</a>&lt;T&gt;</td>
        <td><span class="parametername">to</span></td>
        <td><p>A new boundary To.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><p>A range with a new To boundary or the source fange if the new boundary is less than original.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_ExtendTo__2_CodeJam_Ranges_Range___0___1____0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.ExtendTo%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L410">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_ExtendTo_" data-uid="CodeJam.Ranges.RangeExtensions.ExtendTo*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_ExtendTo__2_CodeJam_Ranges_Range___0___1____0_" data-uid="CodeJam.Ranges.RangeExtensions.ExtendTo``2(CodeJam.Ranges.Range{``0,``1},``0)">ExtendTo&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, T)</h4>
  <div class="markdown level1 summary"><p>Extends the range from the right.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T, TKey&gt; ExtendTo&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, T to)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">to</span></td>
        <td><p>A new value To.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><p>A range with a new To boundary or the source fange if the new boundary is less than original.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_ExtendTo__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryTo___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.ExtendTo%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2CCodeJam.Ranges.RangeBoundaryTo%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L422">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_ExtendTo_" data-uid="CodeJam.Ranges.RangeExtensions.ExtendTo*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_ExtendTo__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryTo___0__" data-uid="CodeJam.Ranges.RangeExtensions.ExtendTo``2(CodeJam.Ranges.Range{``0,``1},CodeJam.Ranges.RangeBoundaryTo{``0})">ExtendTo&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, RangeBoundaryTo&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Extends the range from the right.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T, TKey&gt; ExtendTo&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, RangeBoundaryTo&lt;T&gt; to)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryTo-1.html">RangeBoundaryTo</a>&lt;T&gt;</td>
        <td><span class="parametername">to</span></td>
        <td><p>A new boundary To.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><p>A range with a new To boundary or the source fange if the new boundary is less than original.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_HasIntersection__1_CodeJam_Ranges_Range___0____0___0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.HasIntersection%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2C%60%600%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L170">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_HasIntersection_" data-uid="CodeJam.Ranges.RangeExtensions.HasIntersection*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_HasIntersection__1_CodeJam_Ranges_Range___0____0___0_" data-uid="CodeJam.Ranges.RangeExtensions.HasIntersection``1(CodeJam.Ranges.Range{``0},``0,``0)">HasIntersection&lt;T&gt;(Range&lt;T&gt;, T, T)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range has intersection with another range.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool HasIntersection&lt;T&gt;(this Range&lt;T&gt; range, T from, T to)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">from</span></td>
        <td><p>The boundary From value of the range to check.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">to</span></td>
        <td><p>The boundary To value of the range to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range has intersection with another range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_HasIntersection__2_CodeJam_Ranges_Range___0___1____0___0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.HasIntersection%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2C%60%600%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L188">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_HasIntersection_" data-uid="CodeJam.Ranges.RangeExtensions.HasIntersection*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_HasIntersection__2_CodeJam_Ranges_Range___0___1____0___0_" data-uid="CodeJam.Ranges.RangeExtensions.HasIntersection``2(CodeJam.Ranges.Range{``0,``1},``0,``0)">HasIntersection&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, T, T)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range has intersection with another range.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool HasIntersection&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, T from, T to)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">from</span></td>
        <td><p>The boundary From value of the range to check.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">to</span></td>
        <td><p>The boundary To value of the range to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range has intersection with another range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_HasIntersection__2_CodeJam_Ranges_Range___0____1_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.HasIntersection%60%602(CodeJam.Ranges.Range%7B%60%600%7D%2C%60%601)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L180">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_HasIntersection_" data-uid="CodeJam.Ranges.RangeExtensions.HasIntersection*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_HasIntersection__2_CodeJam_Ranges_Range___0____1_" data-uid="CodeJam.Ranges.RangeExtensions.HasIntersection``2(CodeJam.Ranges.Range{``0},``1)">HasIntersection&lt;T, TRange&gt;(Range&lt;T&gt;, TRange)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range has intersection with another range.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool HasIntersection&lt;T, TRange&gt;(this Range&lt;T&gt; range, TRange other)where TRange : IRange&lt;T&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TRange</span></td>
        <td><span class="parametername">other</span></td>
        <td><p>The range to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range has intersection with another range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TRange</span></td>
        <td><p>The type of another range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_HasIntersection__3_CodeJam_Ranges_Range___0___1____2_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.HasIntersection%60%603(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2C%60%602)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L199">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_HasIntersection_" data-uid="CodeJam.Ranges.RangeExtensions.HasIntersection*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_HasIntersection__3_CodeJam_Ranges_Range___0___1____2_" data-uid="CodeJam.Ranges.RangeExtensions.HasIntersection``3(CodeJam.Ranges.Range{``0,``1},``2)">HasIntersection&lt;T, TKey, TRange&gt;(Range&lt;T, TKey&gt;, TRange)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range has intersection with another range.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool HasIntersection&lt;T, TKey, TRange&gt;(this Range&lt;T, TKey&gt; range, TRange other)where TRange : IRange&lt;T&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TRange</span></td>
        <td><span class="parametername">other</span></td>
        <td><p>The range to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range has intersection with another range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TRange</span></td>
        <td><p>The type of another range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Intersect__1_CodeJam_Ranges_Range___0____0___0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Intersect%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2C%60%600%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L407">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Intersect_" data-uid="CodeJam.Ranges.RangeExtensions.Intersect*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Intersect__1_CodeJam_Ranges_Range___0____0___0_" data-uid="CodeJam.Ranges.RangeExtensions.Intersect``1(CodeJam.Ranges.Range{``0},``0,``0)">Intersect&lt;T&gt;(Range&lt;T&gt;, T, T)</h4>
  <div class="markdown level1 summary"><p>Returns an intersection of the the ranges.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T&gt; Intersect&lt;T&gt;(this Range&lt;T&gt; range, T from, T to)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">from</span></td>
        <td><p>The boundary From value.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">to</span></td>
        <td><p>The boundary To value.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><p>An intersection range or empty range if the ranges do not intersect.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Intersect__2_CodeJam_Ranges_Range___0___1____0___0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Intersect%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2C%60%600%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L442">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Intersect_" data-uid="CodeJam.Ranges.RangeExtensions.Intersect*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Intersect__2_CodeJam_Ranges_Range___0___1____0___0_" data-uid="CodeJam.Ranges.RangeExtensions.Intersect``2(CodeJam.Ranges.Range{``0,``1},``0,``0)">Intersect&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, T, T)</h4>
  <div class="markdown level1 summary"><p>Returns an intersection of the the ranges.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T, TKey&gt; Intersect&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, T from, T to)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">from</span></td>
        <td><p>The boundary From value.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">to</span></td>
        <td><p>The boundary To value.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><p>An intersection range or empty range if the ranges do not intersect.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Intersect__2_CodeJam_Ranges_Range___0____1_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Intersect%60%602(CodeJam.Ranges.Range%7B%60%600%7D%2C%60%601)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L417">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Intersect_" data-uid="CodeJam.Ranges.RangeExtensions.Intersect*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Intersect__2_CodeJam_Ranges_Range___0____1_" data-uid="CodeJam.Ranges.RangeExtensions.Intersect``2(CodeJam.Ranges.Range{``0},``1)">Intersect&lt;T, TRange&gt;(Range&lt;T&gt;, TRange)</h4>
  <div class="markdown level1 summary"><p>Returns an intersection of the the ranges.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T&gt; Intersect&lt;T, TRange&gt;(this Range&lt;T&gt; range, TRange other)where TRange : IRange&lt;T&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TRange</span></td>
        <td><span class="parametername">other</span></td>
        <td><p>The range to intersect with.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><p>An intersection range or empty range if the ranges do not intersect.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TRange</span></td>
        <td><p>The type of another range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Intersect__3_CodeJam_Ranges_Range___0___1____2_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Intersect%60%603(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2C%60%602)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L453">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Intersect_" data-uid="CodeJam.Ranges.RangeExtensions.Intersect*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Intersect__3_CodeJam_Ranges_Range___0___1____2_" data-uid="CodeJam.Ranges.RangeExtensions.Intersect``3(CodeJam.Ranges.Range{``0,``1},``2)">Intersect&lt;T, TKey, TRange&gt;(Range&lt;T, TKey&gt;, TRange)</h4>
  <div class="markdown level1 summary"><p>Returns an intersection of the the ranges.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T, TKey&gt; Intersect&lt;T, TKey, TRange&gt;(this Range&lt;T, TKey&gt; range, TRange other)where TRange : IRange&lt;T&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TRange</span></td>
        <td><span class="parametername">other</span></td>
        <td><p>The range to intersect with.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><p>An intersection range or empty range if the ranges do not intersect.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TRange</span></td>
        <td><p>The type of another range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_MakeExclusive__1_CodeJam_Ranges_Range___0__System_Func___0___0__System_Func___0___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.MakeExclusive%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2CSystem.Func%7B%60%600%2C%60%600%7D%2CSystem.Func%7B%60%600%2C%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L57">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_MakeExclusive_" data-uid="CodeJam.Ranges.RangeExtensions.MakeExclusive*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_MakeExclusive__1_CodeJam_Ranges_Range___0__System_Func___0___0__System_Func___0___0__" data-uid="CodeJam.Ranges.RangeExtensions.MakeExclusive``1(CodeJam.Ranges.Range{``0},System.Func{``0,``0},System.Func{``0,``0})">MakeExclusive&lt;T&gt;(Range&lt;T&gt;, Func&lt;T, T&gt;, Func&lt;T, T&gt;)</h4>
  <div class="markdown level1 summary"><p>Replaces inclusive boundaries with exclusive ones with the values from the selector callbacks</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T&gt; MakeExclusive&lt;T&gt;(this Range&lt;T&gt; range, Func&lt;T, T&gt; fromValueSelector, Func&lt;T, T&gt; toValueSelector)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;T, T&gt;</td>
        <td><span class="parametername">fromValueSelector</span></td>
        <td><p>Callback to obtain a new value for the From boundary. Used if the boundary is inclusive.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;T, T&gt;</td>
        <td><span class="parametername">toValueSelector</span></td>
        <td><p>Callback to obtain a new value for the To boundary. Used if the boundary is inclusive.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><p>A range with exclusive boundaries.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_MakeExclusive__2_CodeJam_Ranges_Range___0___1__System_Func___0___0__System_Func___0___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.MakeExclusive%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2CSystem.Func%7B%60%600%2C%60%600%7D%2CSystem.Func%7B%60%600%2C%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L68">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_MakeExclusive_" data-uid="CodeJam.Ranges.RangeExtensions.MakeExclusive*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_MakeExclusive__2_CodeJam_Ranges_Range___0___1__System_Func___0___0__System_Func___0___0__" data-uid="CodeJam.Ranges.RangeExtensions.MakeExclusive``2(CodeJam.Ranges.Range{``0,``1},System.Func{``0,``0},System.Func{``0,``0})">MakeExclusive&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, Func&lt;T, T&gt;, Func&lt;T, T&gt;)</h4>
  <div class="markdown level1 summary"><p>Replaces inclusive boundaries with exclusive ones with the values from the selector callbacks</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T, TKey&gt; MakeExclusive&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, Func&lt;T, T&gt; fromValueSelector, Func&lt;T, T&gt; toValueSelector)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;T, T&gt;</td>
        <td><span class="parametername">fromValueSelector</span></td>
        <td><p>Callback to obtain a new value for the From boundary. Used if the boundary is inclusive.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;T, T&gt;</td>
        <td><span class="parametername">toValueSelector</span></td>
        <td><p>Callback to obtain a new value for the To boundary. Used if the boundary is inclusive.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><p>A range with exclusive boundaries.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_MakeInclusive__1_CodeJam_Ranges_Range___0__System_Func___0___0__System_Func___0___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.MakeInclusive%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2CSystem.Func%7B%60%600%2C%60%600%7D%2CSystem.Func%7B%60%600%2C%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L24">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_MakeInclusive_" data-uid="CodeJam.Ranges.RangeExtensions.MakeInclusive*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_MakeInclusive__1_CodeJam_Ranges_Range___0__System_Func___0___0__System_Func___0___0__" data-uid="CodeJam.Ranges.RangeExtensions.MakeInclusive``1(CodeJam.Ranges.Range{``0},System.Func{``0,``0},System.Func{``0,``0})">MakeInclusive&lt;T&gt;(Range&lt;T&gt;, Func&lt;T, T&gt;, Func&lt;T, T&gt;)</h4>
  <div class="markdown level1 summary"><p>Replaces exclusive boundaries with inclusive ones with the values from the selector callbacks</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T&gt; MakeInclusive&lt;T&gt;(this Range&lt;T&gt; range, Func&lt;T, T&gt; fromValueSelector, Func&lt;T, T&gt; toValueSelector)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;T, T&gt;</td>
        <td><span class="parametername">fromValueSelector</span></td>
        <td><p>Callback to obtain a new value for the From boundary. Used if the boundary is exclusive.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;T, T&gt;</td>
        <td><span class="parametername">toValueSelector</span></td>
        <td><p>Callback to obtain a new value for the To boundary. Used if the boundary is exclusive.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><p>A range with inclusive boundaries.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_MakeInclusive__2_CodeJam_Ranges_Range___0___1__System_Func___0___0__System_Func___0___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.MakeInclusive%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2CSystem.Func%7B%60%600%2C%60%600%7D%2CSystem.Func%7B%60%600%2C%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L34">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_MakeInclusive_" data-uid="CodeJam.Ranges.RangeExtensions.MakeInclusive*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_MakeInclusive__2_CodeJam_Ranges_Range___0___1__System_Func___0___0__System_Func___0___0__" data-uid="CodeJam.Ranges.RangeExtensions.MakeInclusive``2(CodeJam.Ranges.Range{``0,``1},System.Func{``0,``0},System.Func{``0,``0})">MakeInclusive&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, Func&lt;T, T&gt;, Func&lt;T, T&gt;)</h4>
  <div class="markdown level1 summary"><p>Replaces exclusive boundaries with inclusive ones with the values from the selector callbacks</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T, TKey&gt; MakeInclusive&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, Func&lt;T, T&gt; fromValueSelector, Func&lt;T, T&gt; toValueSelector)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;T, T&gt;</td>
        <td><span class="parametername">fromValueSelector</span></td>
        <td><p>Callback to obtain a new value for the From boundary. Used if the boundary is exclusive.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;T, T&gt;</td>
        <td><span class="parametername">toValueSelector</span></td>
        <td><p>Callback to obtain a new value for the To boundary. Used if the boundary is exclusive.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><p>A range with inclusive boundaries.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_StartsAfter__1_CodeJam_Ranges_Range___0____0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.StartsAfter%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L233">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_StartsAfter_" data-uid="CodeJam.Ranges.RangeExtensions.StartsAfter*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_StartsAfter__1_CodeJam_Ranges_Range___0____0_" data-uid="CodeJam.Ranges.RangeExtensions.StartsAfter``1(CodeJam.Ranges.Range{``0},``0)">StartsAfter&lt;T&gt;(Range&lt;T&gt;, T)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range starts after the value specified.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool StartsAfter&lt;T&gt;(this Range&lt;T&gt; range, T value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range starts after the value.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_StartsAfter__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryFrom___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.StartsAfter%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2CCodeJam.Ranges.RangeBoundaryFrom%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L242">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_StartsAfter_" data-uid="CodeJam.Ranges.RangeExtensions.StartsAfter*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_StartsAfter__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryFrom___0__" data-uid="CodeJam.Ranges.RangeExtensions.StartsAfter``1(CodeJam.Ranges.Range{``0},CodeJam.Ranges.RangeBoundaryFrom{``0})">StartsAfter&lt;T&gt;(Range&lt;T&gt;, RangeBoundaryFrom&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range starts after the boundary specified.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool StartsAfter&lt;T&gt;(this Range&lt;T&gt; range, RangeBoundaryFrom&lt;T&gt; other)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryFrom-1.html">RangeBoundaryFrom</a>&lt;T&gt;</td>
        <td><span class="parametername">other</span></td>
        <td><p>The boundary to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range starts after the boundary.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_StartsAfter__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryTo___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.StartsAfter%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2CCodeJam.Ranges.RangeBoundaryTo%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L251">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_StartsAfter_" data-uid="CodeJam.Ranges.RangeExtensions.StartsAfter*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_StartsAfter__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryTo___0__" data-uid="CodeJam.Ranges.RangeExtensions.StartsAfter``1(CodeJam.Ranges.Range{``0},CodeJam.Ranges.RangeBoundaryTo{``0})">StartsAfter&lt;T&gt;(Range&lt;T&gt;, RangeBoundaryTo&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range starts after the boundary specified.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool StartsAfter&lt;T&gt;(this Range&lt;T&gt; range, RangeBoundaryTo&lt;T&gt; other)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryTo-1.html">RangeBoundaryTo</a>&lt;T&gt;</td>
        <td><span class="parametername">other</span></td>
        <td><p>The boundary to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range starts after the boundary.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_StartsAfter__2___1_CodeJam_Ranges_Range___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.StartsAfter%60%602(%60%601%2CCodeJam.Ranges.Range%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L263">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_StartsAfter_" data-uid="CodeJam.Ranges.RangeExtensions.StartsAfter*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_StartsAfter__2___1_CodeJam_Ranges_Range___0__" data-uid="CodeJam.Ranges.RangeExtensions.StartsAfter``2(``1,CodeJam.Ranges.Range{``0})">StartsAfter&lt;T, TRange&gt;(TRange, Range&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range starts after the range specified.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool StartsAfter&lt;T, TRange&gt;(this TRange range, Range&lt;T&gt; other)where TRange : IRange&lt;T&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">TRange</span></td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">other</span></td>
        <td><p>The range to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range starts after another range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TRange</span></td>
        <td><p>The type of the range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_StartsAfter__2_CodeJam_Ranges_Range___0___1____0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.StartsAfter%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L254">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_StartsAfter_" data-uid="CodeJam.Ranges.RangeExtensions.StartsAfter*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_StartsAfter__2_CodeJam_Ranges_Range___0___1____0_" data-uid="CodeJam.Ranges.RangeExtensions.StartsAfter``2(CodeJam.Ranges.Range{``0,``1},``0)">StartsAfter&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, T)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range starts after the value specified.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool StartsAfter&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, T value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">value</span></td>
        <td><p>The value to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range starts after the value.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_StartsAfter__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryFrom___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.StartsAfter%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2CCodeJam.Ranges.RangeBoundaryFrom%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L264">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_StartsAfter_" data-uid="CodeJam.Ranges.RangeExtensions.StartsAfter*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_StartsAfter__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryFrom___0__" data-uid="CodeJam.Ranges.RangeExtensions.StartsAfter``2(CodeJam.Ranges.Range{``0,``1},CodeJam.Ranges.RangeBoundaryFrom{``0})">StartsAfter&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, RangeBoundaryFrom&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range starts after the boundary specified.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool StartsAfter&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, RangeBoundaryFrom&lt;T&gt; other)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryFrom-1.html">RangeBoundaryFrom</a>&lt;T&gt;</td>
        <td><span class="parametername">other</span></td>
        <td><p>The boundary to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range starts after the boundary.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_StartsAfter__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryTo___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.StartsAfter%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2CCodeJam.Ranges.RangeBoundaryTo%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L274">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_StartsAfter_" data-uid="CodeJam.Ranges.RangeExtensions.StartsAfter*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_StartsAfter__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryTo___0__" data-uid="CodeJam.Ranges.RangeExtensions.StartsAfter``2(CodeJam.Ranges.Range{``0,``1},CodeJam.Ranges.RangeBoundaryTo{``0})">StartsAfter&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, RangeBoundaryTo&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range starts after the boundary specified.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool StartsAfter&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, RangeBoundaryTo&lt;T&gt; other)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryTo-1.html">RangeBoundaryTo</a>&lt;T&gt;</td>
        <td><span class="parametername">other</span></td>
        <td><p>The boundary to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range starts after the boundary.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_StartsAfter__3___2_CodeJam_Ranges_Range___0___1__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.StartsAfter%60%603(%60%602%2CCodeJam.Ranges.Range%7B%60%600%2C%60%601%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L287">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_StartsAfter_" data-uid="CodeJam.Ranges.RangeExtensions.StartsAfter*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_StartsAfter__3___2_CodeJam_Ranges_Range___0___1__" data-uid="CodeJam.Ranges.RangeExtensions.StartsAfter``3(``2,CodeJam.Ranges.Range{``0,``1})">StartsAfter&lt;T, TKey, TRange&gt;(TRange, Range&lt;T, TKey&gt;)</h4>
  <div class="markdown level1 summary"><p>Determines whether the range starts after the range specified.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static bool StartsAfter&lt;T, TKey, TRange&gt;(this TRange range, Range&lt;T, TKey&gt; other)where TRange : IRange&lt;T&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">TRange</span></td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">other</span></td>
        <td><p>The range to check.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code>, if the range starts after another range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TRange</span></td>
        <td><p>The type of the range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_TrimFrom__1_CodeJam_Ranges_Range___0____0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.TrimFrom%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L433">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_TrimFrom_" data-uid="CodeJam.Ranges.RangeExtensions.TrimFrom*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_TrimFrom__1_CodeJam_Ranges_Range___0____0_" data-uid="CodeJam.Ranges.RangeExtensions.TrimFrom``1(CodeJam.Ranges.Range{``0},``0)">TrimFrom&lt;T&gt;(Range&lt;T&gt;, T)</h4>
  <div class="markdown level1 summary"><p>Trims the range from the left.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T&gt; TrimFrom&lt;T&gt;(this Range&lt;T&gt; range, T from)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">from</span></td>
        <td><p>A new value From.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><p>A range with a new From boundary
or the source fange if the new boundary is less than original
or an empty range if the new From boundary is greater than To boundary of the range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_TrimFrom__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryFrom___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.TrimFrom%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2CCodeJam.Ranges.RangeBoundaryFrom%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L446">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_TrimFrom_" data-uid="CodeJam.Ranges.RangeExtensions.TrimFrom*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_TrimFrom__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryFrom___0__" data-uid="CodeJam.Ranges.RangeExtensions.TrimFrom``1(CodeJam.Ranges.Range{``0},CodeJam.Ranges.RangeBoundaryFrom{``0})">TrimFrom&lt;T&gt;(Range&lt;T&gt;, RangeBoundaryFrom&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Trims the range from the left.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T&gt; TrimFrom&lt;T&gt;(this Range&lt;T&gt; range, RangeBoundaryFrom&lt;T&gt; from)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryFrom-1.html">RangeBoundaryFrom</a>&lt;T&gt;</td>
        <td><span class="parametername">from</span></td>
        <td><p>A new boundary From.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><p>A range with a new From boundary
or the source fange if the new boundary is less than original
or an empty range if the new From boundary is greater than To boundary of the range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_TrimFrom__2_CodeJam_Ranges_Range___0___1____0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.TrimFrom%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L470">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_TrimFrom_" data-uid="CodeJam.Ranges.RangeExtensions.TrimFrom*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_TrimFrom__2_CodeJam_Ranges_Range___0___1____0_" data-uid="CodeJam.Ranges.RangeExtensions.TrimFrom``2(CodeJam.Ranges.Range{``0,``1},``0)">TrimFrom&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, T)</h4>
  <div class="markdown level1 summary"><p>Trims the range from the left.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T, TKey&gt; TrimFrom&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, T from)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">from</span></td>
        <td><p>A new value From.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><p>A range with a new From boundary
or the source fange if the new boundary is less than original
or an empty range if the new From boundary is greater than To boundary of the range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_TrimFrom__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryFrom___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.TrimFrom%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2CCodeJam.Ranges.RangeBoundaryFrom%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L484">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_TrimFrom_" data-uid="CodeJam.Ranges.RangeExtensions.TrimFrom*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_TrimFrom__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryFrom___0__" data-uid="CodeJam.Ranges.RangeExtensions.TrimFrom``2(CodeJam.Ranges.Range{``0,``1},CodeJam.Ranges.RangeBoundaryFrom{``0})">TrimFrom&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, RangeBoundaryFrom&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Trims the range from the left.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T, TKey&gt; TrimFrom&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, RangeBoundaryFrom&lt;T&gt; from)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryFrom-1.html">RangeBoundaryFrom</a>&lt;T&gt;</td>
        <td><span class="parametername">from</span></td>
        <td><p>A new boundary From.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><p>A range with a new From boundary
or the source fange if the new boundary is less than original
or an empty range if the new From boundary is greater than To boundary of the range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_TrimTo__1_CodeJam_Ranges_Range___0____0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.TrimTo%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L461">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_TrimTo_" data-uid="CodeJam.Ranges.RangeExtensions.TrimTo*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_TrimTo__1_CodeJam_Ranges_Range___0____0_" data-uid="CodeJam.Ranges.RangeExtensions.TrimTo``1(CodeJam.Ranges.Range{``0},``0)">TrimTo&lt;T&gt;(Range&lt;T&gt;, T)</h4>
  <div class="markdown level1 summary"><p>Trims the range from the right.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T&gt; TrimTo&lt;T&gt;(this Range&lt;T&gt; range, T to)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">to</span></td>
        <td><p>A new value To.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><p>A range with a new To boundary
or the source fange if the new boundary is greater than original
or an empty range if the new To boundary is less than From boundary of the range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_TrimTo__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryTo___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.TrimTo%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2CCodeJam.Ranges.RangeBoundaryTo%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L474">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_TrimTo_" data-uid="CodeJam.Ranges.RangeExtensions.TrimTo*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_TrimTo__1_CodeJam_Ranges_Range___0__CodeJam_Ranges_RangeBoundaryTo___0__" data-uid="CodeJam.Ranges.RangeExtensions.TrimTo``1(CodeJam.Ranges.Range{``0},CodeJam.Ranges.RangeBoundaryTo{``0})">TrimTo&lt;T&gt;(Range&lt;T&gt;, RangeBoundaryTo&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Trims the range from the right.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T&gt; TrimTo&lt;T&gt;(this Range&lt;T&gt; range, RangeBoundaryTo&lt;T&gt; to)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryTo-1.html">RangeBoundaryTo</a>&lt;T&gt;</td>
        <td><span class="parametername">to</span></td>
        <td><p>A new boundary To.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><p>A range with a new To boundary
or the source fange if the new boundary is greater than original
or an empty range if the new To boundary is less than From boundary of the range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_TrimTo__2_CodeJam_Ranges_Range___0___1____0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.TrimTo%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L500">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_TrimTo_" data-uid="CodeJam.Ranges.RangeExtensions.TrimTo*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_TrimTo__2_CodeJam_Ranges_Range___0___1____0_" data-uid="CodeJam.Ranges.RangeExtensions.TrimTo``2(CodeJam.Ranges.Range{``0,``1},``0)">TrimTo&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, T)</h4>
  <div class="markdown level1 summary"><p>Trims the range from the right.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T, TKey&gt; TrimTo&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, T to)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">to</span></td>
        <td><p>A new value To.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><p>A range with a new To boundary
or the source fange if the new boundary is greater than original
or an empty range if the new To boundary is less than From boundary of the range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_TrimTo__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryTo___0__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.TrimTo%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2CCodeJam.Ranges.RangeBoundaryTo%7B%60%600%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L514">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_TrimTo_" data-uid="CodeJam.Ranges.RangeExtensions.TrimTo*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_TrimTo__2_CodeJam_Ranges_Range___0___1__CodeJam_Ranges_RangeBoundaryTo___0__" data-uid="CodeJam.Ranges.RangeExtensions.TrimTo``2(CodeJam.Ranges.Range{``0,``1},CodeJam.Ranges.RangeBoundaryTo{``0})">TrimTo&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, RangeBoundaryTo&lt;T&gt;)</h4>
  <div class="markdown level1 summary"><p>Trims the range from the right.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T, TKey&gt; TrimTo&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, RangeBoundaryTo&lt;T&gt; to)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.RangeBoundaryTo-1.html">RangeBoundaryTo</a>&lt;T&gt;</td>
        <td><span class="parametername">to</span></td>
        <td><p>A new boundary To.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><p>A range with a new To boundary
or the source fange if the new boundary is greater than original
or an empty range if the new To boundary is less than From boundary of the range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Union__1_CodeJam_Ranges_Range___0____0___0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Union%60%601(CodeJam.Ranges.Range%7B%60%600%7D%2C%60%600%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L316">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Union_" data-uid="CodeJam.Ranges.RangeExtensions.Union*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Union__1_CodeJam_Ranges_Range___0____0___0_" data-uid="CodeJam.Ranges.RangeExtensions.Union``1(CodeJam.Ranges.Range{``0},``0,``0)">Union&lt;T&gt;(Range&lt;T&gt;, T, T)</h4>
  <div class="markdown level1 summary"><p>Returns a union range containing both of the ranges.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T&gt; Union&lt;T&gt;(this Range&lt;T&gt; range, T from, T to)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">from</span></td>
        <td><p>The boundary From value.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">to</span></td>
        <td><p>The boundary To value.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><p>A union range containing both of the ranges.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Union__2_CodeJam_Ranges_Range___0___1____0___0_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Union%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2C%60%600%2C%60%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L345">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Union_" data-uid="CodeJam.Ranges.RangeExtensions.Union*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Union__2_CodeJam_Ranges_Range___0___1____0___0_" data-uid="CodeJam.Ranges.RangeExtensions.Union``2(CodeJam.Ranges.Range{``0,``1},``0,``0)">Union&lt;T, TKey&gt;(Range&lt;T, TKey&gt;, T, T)</h4>
  <div class="markdown level1 summary"><p>Returns a union range containing both of the ranges.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T, TKey&gt; Union&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range, T from, T to)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">from</span></td>
        <td><p>The boundary From value.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">T</span></td>
        <td><span class="parametername">to</span></td>
        <td><p>The boundary To value.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><p>A union range containing both of the ranges.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Union__2_CodeJam_Ranges_Range___0____1_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Union%60%602(CodeJam.Ranges.Range%7B%60%600%7D%2C%60%601)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L326">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Union_" data-uid="CodeJam.Ranges.RangeExtensions.Union*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Union__2_CodeJam_Ranges_Range___0____1_" data-uid="CodeJam.Ranges.RangeExtensions.Union``2(CodeJam.Ranges.Range{``0},``1)">Union&lt;T, TRange&gt;(Range&lt;T&gt;, TRange)</h4>
  <div class="markdown level1 summary"><p>Returns a union range containing both of the ranges.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T&gt; Union&lt;T, TRange&gt;(this Range&lt;T&gt; range, TRange other)where TRange : IRange&lt;T&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TRange</span></td>
        <td><span class="parametername">other</span></td>
        <td><p>The range to union with.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><p>A union range containing both of the ranges.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TRange</span></td>
        <td><p>The type of another range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_Union__3_CodeJam_Ranges_Range___0___1____2_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.Union%60%603(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2C%60%602)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L356">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_Union_" data-uid="CodeJam.Ranges.RangeExtensions.Union*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_Union__3_CodeJam_Ranges_Range___0___1____2_" data-uid="CodeJam.Ranges.RangeExtensions.Union``3(CodeJam.Ranges.Range{``0,``1},``2)">Union&lt;T, TKey, TRange&gt;(Range&lt;T, TKey&gt;, TRange)</h4>
  <div class="markdown level1 summary"><p>Returns a union range containing both of the ranges.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T, TKey&gt; Union&lt;T, TKey, TRange&gt;(this Range&lt;T, TKey&gt; range, TRange other)where TRange : IRange&lt;T&gt;</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TRange</span></td>
        <td><span class="parametername">other</span></td>
        <td><p>The range to union with.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><p>A union range containing both of the ranges.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TRange</span></td>
        <td><p>The type of another range.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_WithKey__2_CodeJam_Ranges_Range___0____1_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.WithKey%60%602(CodeJam.Ranges.Range%7B%60%600%7D%2C%60%601)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.NoKey.cs/#L88">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_WithKey_" data-uid="CodeJam.Ranges.RangeExtensions.WithKey*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_WithKey__2_CodeJam_Ranges_Range___0____1_" data-uid="CodeJam.Ranges.RangeExtensions.WithKey``2(CodeJam.Ranges.Range{``0},``1)">WithKey&lt;T, TKey2&gt;(Range&lt;T&gt;, TKey2)</h4>
  <div class="markdown level1 summary"><p>Creates a new range with the key specified.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T, TKey2&gt; WithKey&lt;T, TKey2&gt;(this Range&lt;T&gt; range, TKey2 key)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TKey2</span></td>
        <td><span class="parametername">key</span></td>
        <td><p>The value of the new key.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey2&gt;</td>
        <td><p>A new range with the key specified.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey2</span></td>
        <td><p>The type of the new key.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_WithKey__3_CodeJam_Ranges_Range___0___1____2_.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.WithKey%60%603(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D%2C%60%602)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L100">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_WithKey_" data-uid="CodeJam.Ranges.RangeExtensions.WithKey*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_WithKey__3_CodeJam_Ranges_Range___0___1____2_" data-uid="CodeJam.Ranges.RangeExtensions.WithKey``3(CodeJam.Ranges.Range{``0,``1},``2)">WithKey&lt;T, TKey, TKey2&gt;(Range&lt;T, TKey&gt;, TKey2)</h4>
  <div class="markdown level1 summary"><p>Creates a new range with the key specified.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T, TKey2&gt; WithKey&lt;T, TKey, TKey2&gt;(this Range&lt;T, TKey&gt; range, TKey2 key)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TKey2</span></td>
        <td><span class="parametername">key</span></td>
        <td><p>The value of the new key.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey2&gt;</td>
        <td><p>A new range with the key specified.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the range key</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey2</span></td>
        <td><p>The type of the new key.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_WithoutKey__2_CodeJam_Ranges_Range___0___1__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.WithoutKey%60%602(CodeJam.Ranges.Range%7B%60%600%2C%60%601%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.cs/#L97">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_WithoutKey_" data-uid="CodeJam.Ranges.RangeExtensions.WithoutKey*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_WithoutKey__2_CodeJam_Ranges_Range___0___1__" data-uid="CodeJam.Ranges.RangeExtensions.WithoutKey``2(CodeJam.Ranges.Range{``0,``1})">WithoutKey&lt;T, TKey&gt;(Range&lt;T, TKey&gt;)</h4>
  <div class="markdown level1 summary"><p>Creates a range without a range key.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T&gt; WithoutKey&lt;T, TKey&gt;(this Range&lt;T, TKey&gt; range)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The range to remove key from.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><p>A new range without a key.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the key.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_WithValues__2_CodeJam_Ranges_Range___0__System_Func___0___1__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.WithValues%60%602(CodeJam.Ranges.Range%7B%60%600%7D%2CSystem.Func%7B%60%600%2C%60%601%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.cs/#L29">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_WithValues_" data-uid="CodeJam.Ranges.RangeExtensions.WithValues*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_WithValues__2_CodeJam_Ranges_Range___0__System_Func___0___1__" data-uid="CodeJam.Ranges.RangeExtensions.WithValues``2(CodeJam.Ranges.Range{``0},System.Func{``0,``1})">WithValues&lt;T, T2&gt;(Range&lt;T&gt;, Func&lt;T, T2&gt;)</h4>
  <div class="markdown level1 summary"><p>Updates the values of the boundaries of the range.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T2&gt; WithValues&lt;T, T2&gt;(this Range&lt;T&gt; range, Func&lt;T, T2&gt; newValueSelector)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;T, T2&gt;</td>
        <td><span class="parametername">newValueSelector</span></td>
        <td><p>Callback to obtain a new value for the boundaries. Used if boundary has a value.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T2&gt;</td>
        <td><p>A range with new values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">T2</span></td>
        <td><p>The type of new range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_WithValues__2_CodeJam_Ranges_Range___0__System_Func___0___1__System_Func___0___1__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.WithValues%60%602(CodeJam.Ranges.Range%7B%60%600%7D%2CSystem.Func%7B%60%600%2C%60%601%7D%2CSystem.Func%7B%60%600%2C%60%601%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.cs/#L46">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_WithValues_" data-uid="CodeJam.Ranges.RangeExtensions.WithValues*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_WithValues__2_CodeJam_Ranges_Range___0__System_Func___0___1__System_Func___0___1__" data-uid="CodeJam.Ranges.RangeExtensions.WithValues``2(CodeJam.Ranges.Range{``0},System.Func{``0,``1},System.Func{``0,``1})">WithValues&lt;T, T2&gt;(Range&lt;T&gt;, Func&lt;T, T2&gt;, Func&lt;T, T2&gt;)</h4>
  <div class="markdown level1 summary"><p>Updates the values of the boundaries of the range.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T2&gt; WithValues&lt;T, T2&gt;(this Range&lt;T&gt; range, Func&lt;T, T2&gt; fromValueSelector, Func&lt;T, T2&gt; toValueSelector)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;T, T2&gt;</td>
        <td><span class="parametername">fromValueSelector</span></td>
        <td><p>Callback to obtain a new value for the From boundary. Used if boundary has a value.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;T, T2&gt;</td>
        <td><span class="parametername">toValueSelector</span></td>
        <td><p>Callback to obtain a new value for the To boundary. Used if boundary has a value.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-1.html">Range</a>&lt;T2&gt;</td>
        <td><p>A range with new values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">T2</span></td>
        <td><p>The type of new range values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_WithValues__3_CodeJam_Ranges_Range___0___2__System_Func___0___1__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.WithValues%60%603(CodeJam.Ranges.Range%7B%60%600%2C%60%602%7D%2CSystem.Func%7B%60%600%2C%60%601%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.cs/#L64">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_WithValues_" data-uid="CodeJam.Ranges.RangeExtensions.WithValues*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_WithValues__3_CodeJam_Ranges_Range___0___2__System_Func___0___1__" data-uid="CodeJam.Ranges.RangeExtensions.WithValues``3(CodeJam.Ranges.Range{``0,``2},System.Func{``0,``1})">WithValues&lt;T, T2, TKey&gt;(Range&lt;T, TKey&gt;, Func&lt;T, T2&gt;)</h4>
  <div class="markdown level1 summary"><p>Updates the values of the boundaries of the range.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T2, TKey&gt; WithValues&lt;T, T2, TKey&gt;(this Range&lt;T, TKey&gt; range, Func&lt;T, T2&gt; newValueSelector)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;T, T2&gt;</td>
        <td><span class="parametername">newValueSelector</span></td>
        <td><p>Callback to obtain a new value for the boundaries. Used if boundary has a value.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T2, TKey&gt;</td>
        <td><p>A range with new values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">T2</span></td>
        <td><p>The type of new range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the key.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions_WithValues__3_CodeJam_Ranges_Range___0___2__System_Func___0___1__System_Func___0___1__.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions.WithValues%60%603(CodeJam.Ranges.Range%7B%60%600%2C%60%602%7D%2CSystem.Func%7B%60%600%2C%60%601%7D%2CSystem.Func%7B%60%600%2C%60%601%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.cs/#L81">View Source</a>
  </span>
  <a id="CodeJam_Ranges_RangeExtensions_WithValues_" data-uid="CodeJam.Ranges.RangeExtensions.WithValues*"></a>
  <h4 id="CodeJam_Ranges_RangeExtensions_WithValues__3_CodeJam_Ranges_Range___0___2__System_Func___0___1__System_Func___0___1__" data-uid="CodeJam.Ranges.RangeExtensions.WithValues``3(CodeJam.Ranges.Range{``0,``2},System.Func{``0,``1},System.Func{``0,``1})">WithValues&lt;T, T2, TKey&gt;(Range&lt;T, TKey&gt;, Func&lt;T, T2&gt;, Func&lt;T, T2&gt;)</h4>
  <div class="markdown level1 summary"><p>Updates the values of the boundaries of the range.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static Range&lt;T2, TKey&gt; WithValues&lt;T, T2, TKey&gt;(this Range&lt;T, TKey&gt; range, Func&lt;T, T2&gt; fromValueSelector, Func&lt;T, T2&gt; toValueSelector)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T, TKey&gt;</td>
        <td><span class="parametername">range</span></td>
        <td><p>The source range.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;T, T2&gt;</td>
        <td><span class="parametername">fromValueSelector</span></td>
        <td><p>Callback to obtain a new value for the From boundary. Used if boundary has a value.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Func</span>&lt;T, T2&gt;</td>
        <td><span class="parametername">toValueSelector</span></td>
        <td><p>Callback to obtain a new value for the To boundary. Used if boundary has a value.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CodeJam.Ranges.Range-2.html">Range</a>&lt;T2, TKey&gt;</td>
        <td><p>A range with new values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">T</span></td>
        <td><p>The type of the range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">T2</span></td>
        <td><p>The type of new range values.</p>
</td>
      </tr>
      <tr>
        <td><span class="parametername">TKey</span></td>
        <td><p>The type of the key.</p>
</td>
      </tr>
    </tbody>
  </table>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <div class="contribution">
                <ul class="nav">
                  <li>
                    <a href="https://github.com/rsdn/CodeJam/new/master/apiSpec/new?filename=CodeJam_Ranges_RangeExtensions.md&amp;value=---%0Auid%3A%20CodeJam.Ranges.RangeExtensions%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A" class="contribution-link">Improve this Doc</a>
                  </li>
                  <li>
                    <a href="https://github.com/rsdn/CodeJam/blob/master/Main/src/Ranges/[RangeExtensions]/RangeExtensions.WithKey.generated.cs/#L21" class="contribution-link">View Source</a>
                  </li>
                </ul>
              </div>
              <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
              <!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
              </nav>
            </div>
          </div>
        </div>
      </div>
      
      <footer>
        <div class="grad-bottom"></div>
        <div class="footer">
          <div class="container">
            <span class="pull-right">
              <a href="#top">Back to top</a>
            </span>
            Copyright � 2015-2017
            
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="../../styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="../../styles/docfx.js"></script>
    <script type="text/javascript" src="../../styles/main.js"></script>
  </body>
</html>
